package interfacer;


/**
 * @Description: API调用回调
 * @author: fengrun@pinduoduo.com
 * @date: 2018/9/11
 */

public abstract class ApiEventListenerV1<T> {

    /**
     * 接口调用数据
     *
     * @param data 数据
     */
    abstract void onDataReceived(T data);

    /**
     * 接口调用进度
     *
     * @param progress 进度1-100
     */
    void onProgress(Object id, int progress) {
        /**
         * 空实现，文件上传下载等业务需要覆盖
         */
    }

    /**
     * 接口调用异常
     *
     * @param code   异常码
     * @param reason 异常原因
     */
    abstract void onException(String code, String reason);
}
